In discrete event simulation, an organization's processing efficiency may be simulated and analyzed. For example, a bank providing multiple services may have lines of customers waiting for each of those services. Some customers may use only one service. Other customers may use multiple services. The route of each customer that uses multiple services may vary. By simulating the bank's processing of their customers, useful information may be derived that may be used to improve the organization's efficiency, customer satisfaction, etc. For example, simulation may be useful to diagnose an organization's operations, identify bottlenecks, and understand key performance indicators (KPIs) of a system. KPIs include worker utilization, on-time delivery rate, customer waiting time, etc. Typically, discrete event simulation systems are hand-coded, with various implementations in the C programming language. However, the use of hand-coded programming languages becomes computationally expensive for larger simulations.